#include "widget.h"
#include "ui_widget.h"
#include <QLayout>
#include <QHBoxLayout>
#include <QVBoxLayout>



Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    //基本布局：QBoxLayout

    //水平布局：QHBoxLayout
    QHBoxLayout *hLayout = new QHBoxLayout;
    //垂直布局：QVBoxLayout
    QVBoxLayout* vLayout = new QVBoxLayout;


    //正是因为有了布局，才使得我们能够灵活的操控控件，还可以让整个界面看起来非常灵活，随着窗口的变大而变大
    //布局就相当于一个盒子，可以把所有的子控件放在盒子里装起来，水平排成一排，或者竖直排成一排
\


    //给水平布局类  添加  部件：
    hLayout->addWidget(ui->lineEdit);
    //hLayout->addStretch(30);      //设置弹簧，让这两个部件之间隔开       隔开之间的距离由窗口的改变而相应改变，参数最小是0；
    hLayout->addWidget(ui->pushButton);

    //设置部件之间的水平间隔：
    //hLayout->setSpacing(50);

    //设置布局      与       窗口的边界距离：
    hLayout->setContentsMargins(6,1,6,30);
                             //  第一个参数是左边部件与窗口边缘的距离，第三个参数也是，第四个参数是增加该部件与窗口边缘或者下面部件的距离，增加了距离，这个部件区域的大小也就变大了；
                            //也就相当于把该控件下面的一快指定白色区域给了该控件，现在部件区域变成了这个样子；第二个参数是增加该部件与该部件区域顶部间的距离，或者说是减小了到该部件区域底部之间的距离；

    //给垂直布局添加布局：
    vLayout->addLayout(hLayout);
    //给垂直布局添加部件：
    vLayout->addWidget(ui->listView);
    //这样 先设置水平布局    再设置垂直布局，遮掩整个窗口内的部件就能随这窗口大小的变化而做出相应的改变了






    //设置布局：
    //this->setLayout(hLayout);
    this->setLayout(vLayout);

}

Widget::~Widget()
{
    delete ui;
}

